Function isotope_parser::utils::natural [−][src]
pub fn natural<F: IntFromStr>(input: &str) -> IResult<&str, F>
Expand description
Parse a natural number
Examples
assert_eq!(natural::<u32>("5"), Ok(("", 5))); assert_eq!(natural::<u32>("0x5"), Ok(("", 5))); assert_eq!(natural::<u32>("0xfa"), Ok(("", 0xfa))); assert_eq!(natural::<u32>("0o15"), Ok(("", 0o15))); assert_eq!(natural::<u32>("0b10"), Ok(("", 0b10))); // Only allows valid digits: assert_eq!(natural::<u32>("0b20"), Ok(("b20", 0))); assert_eq!(natural::<u32>("0b02"), Ok(("2", 0))); // Overflow! assert!(natural::<u32>("10000000000").is_err()); assert_eq!(natural::<u64>("10000000000"), Ok(("", 10000000000))); assert!(natural::<u64>("100000000000000000000").is_err());